Skip to content

适配 Harness 0.1.2-alpha.4 - #264

Merged
yaojin3616 merged 68 commits into
mainfrom
claude/harness-alpha3-adapt-adfd61
Sep 2, 2026
Merged

适配 Harness 0.1.2-alpha.4#264
yaojin3616 merged 68 commits into
mainfrom
claude/harness-alpha3-adapt-adfd61

Conversation

@yaojin3616

@yaojin3616 yaojin3616 commented Sep 1, 2026

Copy link
Copy Markdown
Contributor

概述

将 dsh-desktop 升级到最新上游 dsh-v0.1.2-alpha.4(commit ad05e08)。上游仍未发布到 npm registry,继续用仓库内 file: 本地打包 tarball 桥接。

详见 docs/harness-0.1.2-alpha.4-upgrade.md

主要改动

  • 本地打包packages/harness-0.1.2-alpha.4/(9 vendor + 245 dsh tarball),删除旧的 packages/harness-0.1.2-alpha.3/
  • 依赖管理package.json 全部 @deepseek-ai/* 升级到 alpha.4;删除上游已移除的 dsh-tool-subagent-report;peerDependencies 范围对齐 ^0.1.2-alpha.4;lockfile 重生成,harness-0.1.2-alpha.3 引用归零。
  • 全部 19 个补丁 100% 适配
    • 会话 Branded Types 适配:dsh-api-session-controller 补齐 AgentHandle 导入;dsh-session-persistencedsh-session-persistence-jsonl 适配 SessionLogOffset 游标与方法签名。
    • CSS Module 样式与 Bundle 漂移适配:dsh-client-ui-workspacecorner-shape: round; 与 border)、dsh-client-ui-model-selection(搜索框与菜单样式对齐)、dsh-client-ui-settings-models(适配候选模型过滤与断言)、dsh-client-ui-deliverables(行号漂移重新对齐,保留 localPathReference)。
    • 会话永久删除能力完整保留在 alpha.4 上并全绿通过测试。
  • Wire 协议与移动端桥接复核:比对证明 SessionSeq / SessionLogOffset branding 纯属 TS 编译期类型,对 wire(JSON / HTTP / RPC / session/page)零破坏;主进程与移动端桥接代码零变动兼容。
  • 品牌资产与版本清理install-brand-assets.mjs 正确导出 3 份品牌 logo;6 份多语言 README 与 preset-transfer 版本标记更新为 alpha.4;全局 sweep 无残留。

验证

  • npm ci:全部 19 个 patch-package 补丁 100% 干净应用(0 warn, 0 error),品牌资源自动构建安装。
  • npm test(Vitest):76 个测试文件、569 个测试用例全部通过(0 失败)
  • npm run typecheck:0 错误。
  • npm run build:正常产出 main 与 preload 包。
  • scripts/verify-harness-auth.mjs:捕获令牌 → 401(无 cookie) → 303(换 cookie) → 200(带 cookie) 全通过。
  • 会话分页冒烟:启动真实 dsh web 实例创建会话,session/page (throughSeq: -1) 成功响应 200 并返回分页 records 结构。
  • Electron 实机启动:正常启动,4 个桌面插件全部镜像挂载,无 recovery 告警。

重命名 alpha.1 -> alpha.3 并重建 18 个 hunk:
- Seat CSS hash _4FiJda_ -> YgMYBq_,picker/search/awesome 类改挂 AgentPresetSeat_module_css_default
- Section 追加类沿用桌面命名空间 rtSEdW_(未随上游变化)
- 丢弃 builtInGroup/customGroup i18n 键(alpha.3 已原生提供)
- 新增本地 messageOf 助手(alpha.3 产物不再内联该函数)
- onSelect 的 Awesome 链接分支保留(绕开上游 select 失败 toast)
@yaojin3616

Copy link
Copy Markdown
Contributor Author

最新 Windows x64 检查中,本 PR 新增的 test/session-delete-patch.test.ts 9 项全部通过,npm ci 也确认 19 个补丁全部可重放。

工作流最终失败在刚合入 main 的 PR #251 路径:src/main/state/plugin-removal.ts:2070 调用了未定义的 markPending,触发 ReferenceErrortest/plugin-removal.test.ts)。当前 origin/main 中只有该调用、没有 markPending 定义;这与本次 Harness/session patch 无关,因此本 PR 未混入 plugin-removal 修复。

@yaojin3616
yaojin3616 force-pushed the claude/harness-alpha3-adapt-adfd61 branch from 709e48e to f13001b Compare September 1, 2026 11:16
@yaojin3616 yaojin3616 changed the title 适配 Harness 0.1.2-alpha.3 适配 Harness 0.1.2-alpha.4 Sep 2, 2026
@yaojin3616
yaojin3616 merged commit 6b6e967 into main Sep 2, 2026
3 checks passed
@yaojin3616
yaojin3616 deleted the claude/harness-alpha3-adapt-adfd61 branch September 2, 2026 07:44
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants